﻿using Adnc.Infra.Entities;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text;

namespace WYT.Sys.Repository.Entities
{
    /// <summary>
    /// 广告
    /// </summary>
    [Table("sys_Banner"), Comment("广告")]
    public class Banner : EfEntity
    {
        /// <summary> 
        /// 标题
        /// </summary>
        [Comment("标题"),MaxLength(500)]
        public string Title { get; set; }

        /// <summary> 
        /// 图片地址
        /// </summary>
        [Comment("图片地址"), MaxLength(2000)]
        public string ImgUrl { get; set; }

        /// <summary> 
        /// 投放设备
        ///1：小程序
        ///2：APP
        ///3：后台
        ///4：ALL
        /// </summary>
        [Comment("投放设备 1:小程序 2：APP 3：后台 4：ALL")]
        public int Equipment { get; set; } = 1;

        /// <summary> 
        /// 投放位置
        /// 1：首页顶部
        /// 2：首页中部
        /// 3：首页底部
        /// 4：首页弹窗
        /// </summary>
        [Comment("投放位置 1：首页顶部 2首页中部3：首页底部 4：首页弹窗")]
        public int Location { get; set; }

        /// <summary> 
        /// 跳转类型
        ///1：原生页面
        ///2：H5页面
        ///3：APP
        /// </summary>
        [Comment("跳转类型 1：原生页面 2：H5页面 3：APP")]
        public int Type { get; set; } = 1;

        /// <summary> 
        /// 跳转目标
        /// </summary>
        [Comment("跳转目标"), MaxLength(2000)]
        public string? Target { get; set; }

        /// <summary>
        /// 其它数据
        /// </summary>
        [Comment("跳转目标")]
        public string? Value { get; set; }

        /// <summary>
        /// 开始时间
        /// </summary>
        [Comment("开始时间")]
        public DateTime? StartTime { get; set; }

        /// <summary>
        /// 结束时间
        /// </summary>
        [Comment("结束时间")]
        public DateTime? EndTime { get; set; }

        /// <summary> 
        /// 创建时间
        /// </summary>
        [Comment("创建时间")]
        public DateTime CreationTime { get; set; }

        /// <summary> 
        /// 排序
        /// </summary>
        [Comment("排序")]
        public int Sort { get; set; }

        /// <summary>
        /// 是否启用
        /// </summary>
        [Comment("是否启用")]
        public bool IsEnabled { get; set; }
    }
}
